"It was a little late to see the stm32f769 discovery kit development board application for trial activity with non ST communities. The activity was about to end, but I couldn't help but feel like trying. I quickly submitted my application to the administrator with full reasons. I didn't expect it was really successful. It seems that it was really" painstaking people, the day is not bad, and the hundred and two Qinguan pass is in pain ", ha ha, It's a little far away. I believe the watchmen can't help patting me. Hurry to move to today's protagonist stm32f769 discovery kit.
appearance
The tall things on the screen are delighted at the sight of the screen. 4-inch capacitive touch screen, perfect. Enjoy the hardware resources from the side of the board
Onboard resources on the front of the stm32f769 discovery development board onboard resources on the back of the stm32f769 discovery development board. You can see that this board is also the master of the ardunio expansion interface development board. If you leave it for later, let's take a look at the details of other interfaces on the development board. St-link is no stranger. At present, almost all st development boards come with their own. Another microusb interface has USB high-speed and OTG functions, which is realized through the onboard usb3320 transceiver. Stm32f769 discovery can be said to have three audio output modes, such as RCA interface for audio output through SPDIF or 3.5mm audio output interface. In addition, the board also reserves an output hole interface for stereo output. The RCA output interface is realized by the main controller stm32f769ni, and the 3.5mm audio input and output interface is realized by the onboard wm8894 audio codec. The special feature of the stm32f769 discovery development board is that it supports POE (power over Ethernet) transmission. In addition to supporting the 10 / 100M Ethernet function, it can also realize power supply through Ethernet. When it comes to power supply, the stm32f769 discovery development board really gave me a big surprise. The board can supply power through five different ways, such as Poe power supply just mentioned, Of course, this requires the support of corresponding peripheral circuits. The power supply voltage is 48V DC, and then the voltage is converted into 5V DC power supply through the on-board Poe module to supply power to the board card. This is a power supply mode.
In addition, the board can supply power through the microusb interface of st-link, which is familiar to everyone; Power is supplied through the mciro USB interface with USB OTG function introduced above, which is another power supply mode; In addition, the 5V power supply through the onboard arduio expansion interface and the 5V external interface of the board itself. Finally, it is necessary to mention that many times we only use the most commonly used microusb wire for power supply, and many times, due to the 500mA output current of the computer port, more peripherals on the board may not operate effectively, At this time, we can also match the adapter to realize higher power supply at the st-link interface, which is very convenient. It should be noted that different power supplies of stm32f769 discovery development board need to adjust the corresponding jump interface of the board. After reading some interfaces on the back of stm32f769 discovery development board, let's take a look at the front after removing the screen. The connection between the 4-inch screen module and stm32f769 discovery development board is realized through Mipi DSI interface. If you remember correctly, the world's first MCU integrating mipi-dsi interface was made by St. mipi-dsi is the display standard specification of mobile industry processor interface. The serial interface can connect the display through a few pins and improve the supported display resolution. We can usually see in the disassembly of smartphones and tablets on the Internet. As for the integrated Mipi interface of microcontroller, it is only those brave semiconductor manufacturers who dare to engage in it. The quad SPI flash chip of MXIC 512MB can also be seen under the screen. Main controller stm32f769nih6
Finally, let's take a look at the main control chip on board. Another major work of ST is based on arm cortex-m7 microcontroller. The specific model stm32f769nih6 adopts tfbga216 package. The product parameters of stm32f769nih6 are as follows. For more details, you can download the official st specification. Therefore, the whole stm32f769 discovery development board is based on the expansion of stm32f769nih6 microcontroller. The hardware system block diagram is as follows. Power on the development board
The microusb interface on the traditional st-linkv2-1 circuit module is used for the first power on. After power on, the factory built-in firmware is run. This built-in firmware has also been experienced on the previous stm32f4 series discovery development board, as shown in the figure below. Graphical display interface, very friendly interaction mode, preset audio playback, video playback, recording, vnc, smart home, touch gfx, embedded wizard and other functions. Wav lossless format audio playback and recording function Ethernet function can ping the board through the LAN. Here is my favorite touch gfx graphical interface. Touchgfx is a unique software framework, which can be implemented on low-performance hardware comparable to the graphical user interface (GUI) on smart phones. Of course, the low-performance here refers to the cortex-a series processor. How can we say that the microcontroller of this coretx-m7 processor is the strongest among the Cortex-M series processors. Even for simple menu bar options, you can switch the menu display effect in the list and preview graphic display mode. It's very cool. I remember a customer who saw this interface and decided to build such a system. It can be seen that this graphical interface is a killer function for medium and low-end MCU products. Touch gfx has built-in several small game demos and software, which will reflect a very powerful function of St microcontroller, chrome art accelerator. Look at the game that the bird eats gold coins to avoid stones. There is a button to turn on and off the chrome art function in the lower left corner of the interface. Turn off the chrome art accelerator function of St, and the load of MCU will reach 70%. When the chrome art accelerator function is enabled, the load of MCU is only about 3%, and the gap is amazing. Therefore, chrome art accelerator is a very powerful hardware graphics accelerator. It is a 2D direct memory access peripheral. Under very low CPU load, it can realize advanced graphics processing functions, directly access, decode and mix image data, and directly output it to LCD, With the TFT LCD controller and mipi-dsi interface inside the microcontroller, the real-time processing speed and graphics processing and display performance are greatly improved. It can be said that it provides killer functions for those Internet of things applications that need to realize graphical interactive interface.
After experiencing the built-in system functions of stm32f769 discovery development board, I suddenly found some tinnitus. Listen carefully. I'll go. There's a problem with this development board!!! The hardware is defective. The development board has an obvious chirping sound. No wonder I feel the buzzing sound in my ears. This reminds me of the "roaring gate" in iPhone 7. The hardware circuit or a device vibrates under high current. Anyway, I think there is a problem with the board. I don't know if there is any problem with the board obtained by other netizens, Be sure to listen carefully when you power on. Stm32f769 discovery development
When it comes to development, the first thing we need is to install drivers and the corresponding development environment. However, for me, this is not enough. We also need SDK and as many materials as possible. In addition to the third-party ide tools, other information can be obtained in the official St. here, we recommend a graphical interface programming tool stm32cubemx, which is very convenient and practical. It can generate code for other third-party ide tools (such as keil and IAR). The main advantages of using stm32cubemx are:
You can intuitively select STM32
Graphical configuration
C code project generation, covering the initialization part of STM32, compatible with IAR, Keil and GCC compilers. 4. Support eclipse
In vernacular, even if you don't know the C language very well, you can realize simple program development through stm32cubemx. Isn't it a pity to leave such a good tool unused? So, comrades, use it quickly. Even if you are a big cow, you can shorten your R & D time and further improve your development efficiency through stm32cubemx. Then there is the configuration of IDE tools. I prefer to use mdk-keil, so I don't hesitate to use it. The new series of MCU products usually need to install the database package of the device first. It is recommended to go to the official download of KEIL, and then use the speed lever of Xunlei through loading. After installation, you can see that the device graphics of stm32f769nihx are lit. After configuring ide tools, install the driver. The driver can be found directly in the st official. The driver of st-link debugger and virtual serial port are as follows. In addition, if you connect the PC through the microusb cable, you can see the u drive letter of the board. However, it is not said to support the arm mbed project at present. It seems that it will also support the mbed project development in the future. It is expected that 2017. Download the SDK. In addition to the stm32cubef7 provided by St, there are third-party dra touchgfx and Tara EMBD wizard. Therefore, the first two software packages are downloaded. The embed wizard is not too familiar and doesn't like its interface style. I don't have the energy to play. Give it up first and play again when I have time. Let's take a look at what is in the software package of St, including application programs, documentation, microcontroller routines and templates. Because the functions of microSD card have not been tested before, this time use the application routines provided by the official to test. The routine uses the LCD in the display folder under the application_ PicturesFromSDCard。 The compile, download and debug function copies the BMP format pictures of the corresponding resolution to the / media directory of the microSD card to realize the LCD cyclic display of the pictures in the SD storage. Next, use the stm32cubemx tool to DIY an applet. To open cubemx, you first need to install stm32f769 series libraries, because I have downloaded them between, and you can directly import them locally. But I really found that the latest version shown above is 1.5.1, and my SDK is the latest version from the st official website, but it is 1.4.1. What a pit father. The updates of St are not synchronized? In addition, the version update description box can't be adjusted. It doesn't look so small. It's not user-friendly. After reading several update tips, it doesn't affect the small functions I want to use. Even so, just import the 1.4.1 version directly. After completion, you can directly find the corresponding board under the new project, which is very convenient. After opening, you can see the pin definition diagram including menu bar, function bar, module bar and microcontroller. The graphical interface is very intuitive. The corresponding pin signal can be set here. For example, I want to light up the following two LEDs in the schematic diagram, so I set the signals of these two pins as GPIO output in the figure above. Set corresponding parameters in the GPIO port configuration interface. For clock configuration, you can select Default or set according to requirements, and generate code after completion. Generate the corresponding code according to the IDE tools you use. Open the generated code with KEIL, compile and download it to the board. It can be seen that the LED on the board is lit correctly. It is very simple. There is no need to build a template and build a project. It is very convenient and easy to use. From the perspective of this simple small program, stm32cubemx saves you a series of cumbersome and difficult processes such as new projects, configuration, and so on. In addition, in the actual experience, you can appropriately simplify the writing of some codes to further improve the efficiency of developers. It's often good.
Touch GFX
Finally, let's take a look at the touchgfx-4.6.1-eval package. The directory structure is as follows. In the app / directory, there are various demos, examples and an empty project
The Doc / directory contains documentation
The touchgfx / directory contains function files, such as board level files, configuration files, conversion tools, lib files (this is the core file) and OS source code (FreeRTOS)
In addition, it can be found in \ touchgfx-4.6.1-eval \ app \ demo \ touchgfx_ demo2015_ Under 800x480 \ target \ St \ stm32f7699i-disco \ KEIL, find the touchgfx program directly used for stm32f769 discovery development board.
The program is very large, and it takes a long time to compile, but it is very smooth from compilation to download to the board. However, there were some unexpected situations when the board was actually running. It was very strange that the pictures and menu bar were spent. After looking for a long time, I didn't find out the reason, so I tried to use the compilation environment under windows to simulate the program. Of course, the first thing is to install the development environment under windows. This will be sent to you by email when you apply to the official touchgfx SDK. As shown in the figure below, the whole compilation environment is not as big as the SDK, only about 90m. Install the compilation environment under windows, as shown in. Open and run, or locate the program we just downloaded to the board, and select compile. After compilation, the simulator will be generated in the build / bin directory. Running the simulator, you can find that the just compiled program is running normally, and there is no problem with the picture menu. For a long time, I didn't understand why there was a problem when I downloaded it to the st board. Anyone who knows can solve the problem
Our other product: